package com.haircut.sys.service.dept;

import com.haircut.sys.model.dept.SysDept;
import com.haircut.sys.vo.dept.*;
import com.modular.result.PageResult;

import java.util.List;
import java.util.Map;

public interface IDeptService {

    /**
     * 根据角色id集合查询结束名称信息
     * @param deptIdList
     * @return
     */
    Map<String, DeptSimpleVo> findDeptMapByDeptIdList(List<String> deptIdList);

    /**
     * 新增部门
     * @param reqVo
     */
    void saveDept(DeptReqVo reqVo);

    /**
     * 修改部门信息
     * @param reqVo
     */
    void modifyDept(DeptReqVo reqVo);

    /**
     * 根据部门id删除部门信息
     * @param deptId
     */
    void deleteById(String deptId);

    /**
     * 根据部门id查询部门详情
     * @param deptId
     * @return
     */
    DeptDetailVo findDetail(String deptId);

    /**
     * 分页查询部门信息
     * @param reqVo
     * @return
     */
    List<DeptPageResVo> findAll(DeptPageReqVo reqVo);

    /**
     * 按树形查询部门信息
     * @param parentId
     * @return
     */
    List<DeptTreeVo> findTree();

    /**
     * 根据id查询部门信息
     * @param deptId
     * @return
     */
    SysDept findById(String deptId);




}
